/*
 * Copyright (c) Huawei Technologies Co., Ltd. 2014-2019.
 * Description: header for kbox, describing the main headers needing to be included
 * Author: lichaoyue
 * Create: 2014-3-24
 */

#ifndef KBOX_INCLUDE_H
#define KBOX_INCLUDE_H

#include <linux/init.h>
#include <linux/module.h>
#include <linux/moduleparam.h>
#include <linux/kernel.h>	/* printk() */
#include <linux/slab.h>		/* kmalloc() */
#include <linux/fs.h>		/* everything... */
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
#include <linux/uaccess.h>	/* copy_*_user */
#include <linux/string.h>
#include <linux/mm.h>
#include <linux/kthread.h>
#include <asm/atomic.h>
#include <linux/rtc.h>
#include <linux/syslog.h> /* syslog , check_syslog_permissions */

/* kbox header files */
#include <linux/kbox/kbox.h>
#include <linux/set_kbox_region.h>
#include "kbox_proc.h"
#include "kbox_core.h"
#include "kbox_private.h"
#ifndef CONFIG_RTOS_KBOX_MINI
#include "kbox_control.h"
#endif

#include <linux/vmalloc.h>

#define error(s, args...)	pr_err("KBOX: "s, ## args)

#define warning(s, args...)	pr_warn("KBOX: "s, ## args)

#define notice(s, args...)	pr_notice("KBOX: "s, ## args)
#endif
